题目描述
在字符串 s 中找出第一个只出现一次的字符。如果没有,返回一个单空格。 s 只包含小写字母。
示例 1:
1 | 输入:s = "abaccdeff" |
示例 2:
1 | 输入:s = "" |
限制:
$0 <= s 的长度 <= 50000$
算法
(哈希表) $O(n)$
- 遍历一遍字符串用哈希表存储每个字符出现的次数
- 再遍历一遍字符串遇到只出现一次的字符返回即可,否则返回
#
时间复杂度
字符串被遍历两次,时间复杂度为 $O(n)$
空间复杂度
$O(n)$
C++ 代码
1 | class Solution { |